#给你一个整数数组 nums 和一个整数 k ，判断数组中是否存在两个 不同的索引 i 和 j ，满足 nums[i] == nums[j] 且 abs(i - j) <= k 。如果存在，返回 true ；否则，返回 false 。
class Solution:
    def containsNearbyDuplicate(self, nums: list[int], k: int) -> bool:
        pos = {}#定义一个字典
        for i, num in enumerate(nums):
            if num in pos and i - pos[num] <= k:
                return True
            pos[num] = i
        return False
####################################
#解二：
class Solution:
    def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool:
        n = len(nums)
        for i in range(0,n):
            for j in range(i+1,n):
                if (nums[i] == nums[j] and abs(i - j) <= k):
                    return True
        return False